The present invention relates generally to search query prediction. More particularly the present invention relates to predicting subsequent queries and retrieving the search results from the predicted queries based upon an initial search query utilizing a conventional search engine.
Electronic searching for information contained in a database is typically conducted by entering a query term or phrase into a search engine. Typically, the search query returns document results that are based on relevancy to the queried search term(s). With the growing use of the Internet and database technologies, query based searching has grown beyond simply searching databases contained locally within an organization, to searching file systems and external databases over the Internet due to its vast resources and wealth of information. The term document, as used in this application encompasses files, records, pages, Internet sites, data entries, or any other terminology used to identify a unit of a database.
Computer users searching for particular documents conventionally use a typical search engine function, such as Microsoft's Indexing Service Query or the like. The user typically starts his search by entering a query, comprising at least one term, inside the search engine input box. The term generally consists of an anticipated keyword or string of search terms, which the search engine then uses to search its database and generate a return list of documents containing such keyword(s) or are pre-designated as being related to such keyword(s). Preferably, only documents that are relevant to the queried search term are returned in the return list to avoid confusing and overwhelming the user with numerous irrelevant results. However, as is typically confronted using conventional search engines, many documents may be relevant to the queried term(s) and thus a result of thousands, if not millions, of documents may be provided in the results list, thus frustrating the user's task by requiring a manual review of each result returned to find the desired document. Additionally, the user may inadvertently select the incorrect term used within the search query and the desired document list is not returned.
To combat this problem, some existing search engines have implemented refinement processes that attempt to limit or filter the user's search in order to narrow the amount of documents returned in the return list. An typical existing refinement process works by suggesting related query terms directly to the user based on the user's previous queried term(s). This process, generally called frequency searching, uses previous searches of the existing search user as a method of refinement by comparing the frequency the user has previously used certain terms in conjunction with other terms during a previous search. The process then attempts to provide refined search words by recommending combinations or related terms based upon that comparison. As such, this process is wholly dependent upon the frequency that exact search terms have historically been submitted. However, as anticipated, a limitation of this process is that it is confined to search terms previously used by the search user and thus does not have the capability to accurately and efficiently predict keywords that can be utilized. The present invention overcomes this limitation by not being dependent upon the terms previously utilized by the user.
Another existing search engine refinement process is the use of not only the existing user's previously used terms, but the frequency of used terms based upon a group of searchers. This group can be as enormous as all Internet users or as small as a local area network. This process utilizes the same comparison technique as described above but has enhanced its abilities by enlarging its comparable terms. Again, however, a limitation of this process is that the refined search terms are dependent upon the terminology of other finite searchers. The present invention overcomes this limitation by not being dependent upon the terminology used by other searchers.
Yet another search engine refinement process is determining the frequency of occurrence of a search term within each of the documents that are generated by the initial search. After the search engine identifies the most frequently used term(s) within a document it presents these terms to the user as feasibly “related” terms for the user to use in order to refine his search. A limitation of this process is that the related terms are confined to the finite verbiage and term usage contained within the resultant documents. The present invention overcomes this limitation by not being confined to terms contained within a resultant document.
Yet, there is missing in the art a reliable and accurate method of predicting the search user's additional needs based upon the initial search query. For example, the return lists generated by the search engines of the existing processes do not anticipate potential needs of the searcher but rather produce results based either on the initial queried search term(s) or the terminology utilized by other searchers and are thus rather limited in their scope and applicability. The present invention overcomes these limitations by, for example, anticipating what the search user may need by relating the search term to a plurality of pre-defined categories, wherein each category has a number of documents associated with it.
The present invention overcomes the disadvantages and/or shortcomings of known prior art search result providers and provides a significant improvement thereover.